package com.xinruke.hostels.dailymanage.mapper;

import com.xinruke.hostels.common.po.YwFangjian;
import com.xinruke.hostels.dailymanage.interfaces.dto.roomstatus.RSBuildingDetailDTO;
import com.xinruke.hostels.dailymanage.interfaces.dto.roomstatus.RSGetRoomCountQueryResultDTO;
import com.xinruke.hostels.dailymanage.interfaces.dto.roomstatus.RSListRoomQueryDTO;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

public interface YwFangjianMapper extends Mapper<YwFangjian> {

    /**
     * 查询酒店下每个房间状态下的数量
     */
    List<RSGetRoomCountQueryResultDTO> getRoomStatusCount(Integer jiudianId);

    List<RSBuildingDetailDTO> listRoom(@Param("dto") RSListRoomQueryDTO params, @Param("jiudianId") Integer jiudianId);

    /**
     * 通过房间id修改房间状态
     */
    int updateStatusById(@Param("id") Integer id, @Param("status") Byte status);


    /**
     * 查询当前所有酒店下已经入住超过2个小时的住净房间列表
     * @return 入住超过两个小时的住净房间列表
     */
    List<YwFangjian> listAllCheckIn2HourRoom();

    /**
     * 查询退房一小时后空脏房间列表
     * @return 空脏房间列表
     */
    List<YwFangjian> listAllCheckOut1HourRoom();
}